package cn.wolfcode.trip.base.domain;


import com.alibaba.druid.support.json.JSONUtils;
import lombok.Getter;
import lombok.Setter;

import java.util.HashMap;
import java.util.Map;

/**
 * 地区实体类
 */

@Setter
@Getter
public class Region extends BaseDomain {

    //状态常量
    public static final int STATE_NOMAL=0;//普通
    public static final int STATE_HOT=1;//热门
    //地区名字
    private String name;
    //父类地区
    private Region parent;
    //状态
    private Integer state=STATE_NOMAL;

    //是不是景点
    private Boolean isScenic;

    //用于treeview插件的格式
    public Map toTreeMap() {
        Map<String,Object> map=new HashMap<>();
        map.put("text",name);
        //用于查询对应的子节点/信息
        map.put("id",id);
        map.put("lazyLoad",true);
        //如果是热门地区,则返回推荐
        if(state == STATE_HOT){
            map.put("tags",new String[]{"推荐"});//需要数组格式
        }
        return map;
    }

    //封装Json字符串 用于页面按钮绑定数据
    public String getJsonString(){
        Map<String,Object> map=new HashMap<>();
        map.put("id",id);
        map.put("name",name);
        map.put("state",state);
        if(parent != null){
            map.put("parentId",parent.getId());
            map.put("parentName",parent.getName());
            map.put("parentState",parent.getState());
        }
        return JSONUtils.toJSONString(map);
    }
}